Skip to main content

19 Superscalar和VLIW

多发射与超标量

取指令和指令译码也通过增加硬件的方式并行进行。

一次性从内存取出多条指令,分发给多个并行的指令译码器进行译码,然后对应交给不同的功能单元去处理。在一个时钟周期能够完成多条指令。

多发射(Mulitple Issue):同时把多条指令发射(Issue)到不同的译码器或后续处理的流水线。

超标量(Superscalar):同时有很多条并行的流水线。

超长指令字设计

CPU 运行时不再取一条指令,而是取一个指令包,译码解析整个指令包,解析出 3 条指令直接并行运行。

失败原因:

  1. 不向前兼容
  2. 编译器需要重新编译,交换指令顺序以及 NOP 操作